package top.yxqz.vagrancy.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import top.yxqz.vagrancy.entity.UserEntity;
import top.yxqz.vagrancy.service.UserEntityService;
import top.yxqz.vagrancy.utils.R;

import javax.servlet.http.HttpSession;

/**
 * @author: 余小小
 * @date: 2023/6/8
 * @description：用户后台视图跳转
 */
@Controller
public class AdminController {

    @Autowired
    private UserEntityService userService;

    /**
     * 跳转到首页的请求
     * uri:/admin
     *
     * @return
     */
    @GetMapping("/admin")
    public String goIndex() {
        return "index";
    }


    @GetMapping("/admin/grzx")
    public String goGrzx() {
        return "uc-grzx";
    }


    /**
     * 修改用户名  ---- 当前登录用户
     * 获取当前登录的用户信息----Session
     * 修改后的用户名----user对象
     *
     * @param user
     * @return
     */
    @PostMapping("/users/upusername")
    public String updateById(UserEntity user, HttpSession session) {
//        获取当前登录的用户信息
        UserEntity user_session = (UserEntity) session.getAttribute("user_session");
//        修改后的用户名----user对象
        String input_username = user.getUsername();
        user_session.setUsername(input_username); //将当前登录的用户信息中的username修改为用户传递进来的

//        构建条件构造器
//        EntityWrapper<UserEntity> wrapper = new EntityWrapper<UserEntity>();
//        wrapper.eq("username",user_session.getUsername());
//        userService.update(user_session,wrapper);//自定义条件修改 ----- 通过用户名修改
        boolean result = userService.updateById(user_session);
        if (result) {
            //        修改成功跳转首页
            return "redirect:/";
        } else {
//            修改失败 跳转回当前页面
            return "redirect:/admin/grzx";
        }
     }


}
